# config.py
import numpy as np
import pygame

# 定义一些颜色变量
BLACK = pygame.Color(0, 0, 0)
RED = pygame.Color(255, 0, 0)
GREEN = pygame.Color(0, 255, 0)
WHITE = pygame.Color(255, 255, 255)
HEAD_COLOR = pygame.Color(0, 119, 255)
BORDER_COLOR = pygame.Color(50, 50, 50)  # 边界颜色

# 全局配置变量
HEIGHT = 24  # 游戏区域高度
WIDTH = 24  # 游戏区域宽度
CELL_SIZE = 20  # 每个单元格的像素大小
MAX_STEPS = ((HEIGHT + WIDTH))**3  # 最大步数
SNAKE_SPEED = 1000  # 蛇的速度，帧率
FIELD_SIZE = HEIGHT * WIDTH  # 游戏区域的大小
HEAD = 0  # 蛇头的位置索引

# 用数字代表不同的对象
UNDEFINED = (HEIGHT + 1) * (WIDTH + 1)
SNAKE = 2 * UNDEFINED
FOOD = 0  # 食物

# 移动方向的数值表示
LEFT = -1
RIGHT = 1
UP = -WIDTH
DOWN = WIDTH

# 错误码
ERR = -1111

# 蛇能够运动的四个方向
MOVES = np.array([LEFT, RIGHT, UP, DOWN], dtype=np.int32)